# Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS.  All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.

{
  'targets': [
    {
      'target_name': 'rtp_rtcp',
      'type': 'static_library',
      'dependencies': [
        '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers',
        '<(webrtc_root)/modules/modules.gyp:remote_bitrate_estimator',
      ],
      'sources': [
        # Common
        'include/fec_receiver.h',
        'include/receive_statistics.h',
        'include/remote_ntp_time_estimator.h',
        'include/rtp_header_parser.h',
        'include/rtp_payload_registry.h',
        'include/rtp_receiver.h',
        'include/rtp_rtcp.h',
        'include/rtp_rtcp_defines.h',
        'source/bitrate.cc',
        'source/bitrate.h',
        'source/byte_io.h',
        'source/fec_receiver_impl.cc',
        'source/fec_receiver_impl.h',
        'source/packet_loss_stats.cc',
        'source/packet_loss_stats.h',
        'source/receive_statistics_impl.cc',
        'source/receive_statistics_impl.h',
        'source/remote_ntp_time_estimator.cc',
        'source/rtp_header_parser.cc',
        'source/rtp_rtcp_config.h',
        'source/rtp_rtcp_impl.cc',
        'source/rtp_rtcp_impl.h',
        'source/rtcp_packet.cc',
        'source/rtcp_packet.h',
        'source/rtcp_packet/app.cc',
        'source/rtcp_packet/app.h',
        'source/rtcp_packet/bye.cc',
        'source/rtcp_packet/bye.h',
        'source/rtcp_packet/common_header.cc',
        'source/rtcp_packet/common_header.h',
        'source/rtcp_packet/compound_packet.cc',
        'source/rtcp_packet/compound_packet.h',
        'source/rtcp_packet/dlrr.cc',
        'source/rtcp_packet/dlrr.h',
        'source/rtcp_packet/extended_jitter_report.cc',
        'source/rtcp_packet/extended_jitter_report.h',
        'source/rtcp_packet/extended_reports.cc',
        'source/rtcp_packet/extended_reports.h',
        'source/rtcp_packet/fir.cc',
        'source/rtcp_packet/fir.h',
        'source/rtcp_packet/nack.cc',
        'source/rtcp_packet/nack.h',
        'source/rtcp_packet/pli.cc',
        'source/rtcp_packet/pli.h',
        'source/rtcp_packet/psfb.cc',
        'source/rtcp_packet/psfb.h',
        'source/rtcp_packet/rapid_resync_request.cc',
        'source/rtcp_packet/rapid_resync_request.h',
        'source/rtcp_packet/receiver_report.cc',
        'source/rtcp_packet/receiver_report.h',
        'source/rtcp_packet/remb.cc',
        'source/rtcp_packet/remb.h',
        'source/rtcp_packet/report_block.cc',
        'source/rtcp_packet/report_block.h',
        'source/rtcp_packet/rpsi.cc',
        'source/rtcp_packet/rpsi.h',
        'source/rtcp_packet/rrtr.cc',
        'source/rtcp_packet/rrtr.h',
        'source/rtcp_packet/rtpfb.cc',
        'source/rtcp_packet/rtpfb.h',
        'source/rtcp_packet/sdes.cc',
        'source/rtcp_packet/sdes.h',
        'source/rtcp_packet/sender_report.cc',
        'source/rtcp_packet/sender_report.h',
        'source/rtcp_packet/sli.cc',
        'source/rtcp_packet/sli.h',
        'source/rtcp_packet/tmmb_item.cc',
        'source/rtcp_packet/tmmb_item.h',
        'source/rtcp_packet/tmmbn.cc',
        'source/rtcp_packet/tmmbn.h',
        'source/rtcp_packet/tmmbr.cc',
        'source/rtcp_packet/tmmbr.h',
        'source/rtcp_packet/transport_feedback.cc',
        'source/rtcp_packet/transport_feedback.h',
        'source/rtcp_packet/voip_metric.cc',
        'source/rtcp_packet/voip_metric.h',
        'source/rtcp_receiver.cc',
        'source/rtcp_receiver.h',
        'source/rtcp_receiver_help.cc',
        'source/rtcp_receiver_help.h',
        'source/rtcp_sender.cc',
        'source/rtcp_sender.h',
        'source/rtcp_utility.cc',
        'source/rtcp_utility.h',
        'source/rtp_header_extension.cc',
        'source/rtp_header_extension.h',
        'source/rtp_receiver_impl.cc',
        'source/rtp_receiver_impl.h',
        'source/rtp_sender.cc',
        'source/rtp_sender.h',
        'source/rtp_utility.cc',
        'source/rtp_utility.h',
        'source/ssrc_database.cc',
        'source/ssrc_database.h',
        'source/time_util.cc',
        'source/time_util.h',
        'source/tmmbr_help.cc',
        'source/tmmbr_help.h',
        # Audio Files
        'source/dtmf_queue.cc',
        'source/dtmf_queue.h',
        'source/rtp_receiver_audio.cc',
        'source/rtp_receiver_audio.h',
        'source/rtp_sender_audio.cc',
        'source/rtp_sender_audio.h',
        # Video Files
        'source/fec_private_tables_random.h',
        'source/fec_private_tables_bursty.h',
        'source/forward_error_correction.cc',
        'source/forward_error_correction.h',
        'source/forward_error_correction_internal.cc',
        'source/forward_error_correction_internal.h',
        'source/h264_bitstream_parser.cc',
        'source/h264_bitstream_parser.h',
        'source/h264_sps_parser.cc',
        'source/h264_sps_parser.h',
        'source/producer_fec.cc',
        'source/producer_fec.h',
        'source/rtp_packet_history.cc',
        'source/rtp_packet_history.h',
        'source/rtp_payload_registry.cc',
        'source/rtp_receiver_strategy.cc',
        'source/rtp_receiver_strategy.h',
        'source/rtp_receiver_video.cc',
        'source/rtp_receiver_video.h',
        'source/rtp_sender_video.cc',
        'source/rtp_sender_video.h',
        'source/video_codec_information.h',
        'source/rtp_format.cc',
        'source/rtp_format.h',
        'source/rtp_format_h264.cc',
        'source/rtp_format_h264.h',
        'source/rtp_format_vp8.cc',
        'source/rtp_format_vp8.h',
        'source/rtp_format_vp9.cc',
        'source/rtp_format_vp9.h',
        'source/rtp_format_video_generic.cc',
        'source/rtp_format_video_generic.h',
        'source/vp8_partition_aggregator.cc',
        'source/vp8_partition_aggregator.h',
        # Mocks
        'mocks/mock_rtp_rtcp.h',
        'source/mock/mock_rtp_payload_strategy.h',
      ], # source
      # TODO(jschuh): Bug 1348: fix size_t to int truncations.
      'msvs_disabled_warnings': [ 4267, ],
    },
  ],
}
